package com.net.xpay.common.dao.partner;

import com.net.xpay.common.domain.partner.PartnerWithdrawRecord;
import com.net.xpay.common.model.search.PartnerWithdrawRecordSearchModel;
import com.net.common.annotation.DataCommon;
import com.net.common.dao.Page;
import com.net.common.dao.VersionedMapper;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.time.LocalDateTime;
import java.util.List;

@DataCommon
@Repository
public interface PartnerWithdrawRecordMapper extends VersionedMapper<Long, PartnerWithdrawRecord> {
    List<PartnerWithdrawRecord> search(@Param("searchModel") PartnerWithdrawRecordSearchModel searchModel, @Param("page") Page page);

    long searchCount(@Param("searchModel") PartnerWithdrawRecordSearchModel searchModel);

    List<PartnerWithdrawRecord> listByIds(@Param("ids") List<Long> ids);

    long statTransferMoney(@Param("minEndTime") LocalDateTime minEndTime, @Param("maxEndTime") LocalDateTime maxEndTime);

    long sumPartnerWithdrawRecordStat(@Param("searchModel")PartnerWithdrawRecordSearchModel searchModel);


    List<PartnerWithdrawRecord> list(@Param("searchModel")PartnerWithdrawRecordSearchModel searchModel);
}
